import java.util.ArrayList;

/*
 * @lc app=leetcode.cn id=989 lang=java
 *
 * [989] 数组形式的整数加法
 */

// @lc code=start
class Solution {
    public List<Integer> addToArrayForm(int[] A, int K) {
        // 显然，这是做一个大整数的相加运算，因为A的长度可能到10000，不可能转成整数的。
        LinkedList<Integer> ans = new LinkedList<>();//要用这个才有addFirst方法。

        int i = A.length-1;//指针
        int lastNum = K;//剩余数字
        while(i>=0 || lastNum>=0){//如果数组没遍历完，或者还剩余的有数字
            if(i>=0){
                lastNum+=A[i];
            }
            ans.addFirst(lastNum%10);//得往前面加，默认是往后面加
            lastNum = lastNum/10;
            i--;
        }
        return ans;
    }
}
// @lc code=end

